4.6 实施者支持
实施者支持模块主要为实施者提供支持,包括标准本身相关的定义及工具、实施工具、开源的参考实现以及在哪里寻求帮助。下面详细介绍该模块提供了哪些支持,详情请见:http://hl7.org/fhir/R4/implsupport-module.html。
4.6.1 标准下载
这里主要是规范本身包含的内容,如FHIR定义的值集、配置文件、资源、示例等,具体如下表所示:
| FHIR定义 | XML-XML格式定义 |
| JSON-JSON格式定义 | |
| Forge-profile生成工具 | |
| 这是生成任何实现制品时的首选定义集。以下所有其他形式仅包括这些定义文件中可用信息的子集,并且不包含有关使资源有效的所有规则。实现者仍然需要熟悉规范的内容以及适用于资源的任何配置文件,以便进行符合要求的实现。 | |
| XML | 示例- XML 格式的所有示例资源 |
| 验证模式-包括支持模式、资源模式、模块化和组合模式以及 Schematrons | |
| Code Generation Schemas-代码生成器 | |
| JSON | 示例- JSON 格式的所有示例资源 |
| JSON Schema | |
| 示例- JSON 格式的所有示例资源 | |
| RDF | Turtle Examples - Turtle 格式的所有示例资源 |
| ShEx Schemas -用于验证 RDF 资源的ShEx定义 | |
| 定义- 定义 RDF 格式中使用的谓词和类的正式定义 | |
| FHIR规范 | 整个规范 ,以便您可以托管自己的本地副本 |
4.6.2 实施工具
为简化实施过程,实施模块提供了很多实施工具,如验证工具、代码生成工具等,如下表所示:
| 验证器 | 官方 FHIR 验证器 - 可用于验证资源的 Java jar 文件 |
|---|---|
| IG出版商 | 实施指南发布工具(请参阅IG发布文档) |
| NPM 包 | FHIR工具使用的NPM包 |
| 翻译文件 | 将常见的 FHIR 名称和消息翻译成多种语言 |
| 图标包 | 各种分辨率的FHIR 图标 |
| 测试用例 | 测试用例的集合。这些是 XML 或 JSON 文件,为各种 FHIR 参考实现提供测试用例,以确保正确运行 |
| 代码生成支持 | 用于模式生成(XML或JSON)的值集的 ValueSet 扩展 + 所有选择元素和主干元素的列表 |
4.6.3 参考实现
FHIR提供了很多开源的参考服务器来帮助实施者开发测试。以下是常见的参考实现列表:
| JAVA | HAPI-FHIR:对象模型、解析器、客户端 + 服务器框架、FHIR 验证器和实用程序 |
|---|---|
| C# | HL7.FHIR:对象模型、解析器/序列化器、实用程序和客户端。GitHub 上的源代码http://github.com/ewoutkramer/fhir-net-api |
| PASCAL | FhirServer:对象模型、解析器/序列化器、验证器、实用程序、客户端和 FHIR 参考服务器。需要Delphi(Unicode 版本) |
| XML | XML 工具:文档呈现样式表、补充实现模式和转换 |
| Javascript | 请参阅HL7 wiki 了解 Javascript 库(服务器和客户端的客户端和实用程序) |
| SWIFT | Swift-FHIR:对象模型、客户端和实用程序 |
参考服务器不是 FHIR 规范的一部分,但维护者尽一切努力确保它们完全兼容。HL7 Confluence 中列出了 FHIR 的完整开源实现,其中一些使用这些参考实现。
4.6.4 实施中的常见问题
该模块包含开发人员在实施过程中遇到的问题的常见解决方案,包括资源验证、管理资源标识符以及与其他标准的比较等等,如下表所示:
| FHIR测试+TestScript+TestReport | 临床安全注意事项 | 比较:V2或 V3消息CDA + CDA on FHIR其他标准 |
| 验证资源 | 在EHR中使用FHIR | |
| 映射语言(Tutorial与StructureMap) | 管理资源标识 | |
| FHIR路径 | 交互模式 | |
| 常见用例 | 更新规则 | |
| 版本管理策略 | 临床案例 |
这里不详细介绍每部分的内容,具体内容见官网。